//Source file: D:\\test\\com\\ce\\pms\\custservice\\service\\IEventManageService.java

package com.ce.pms.custservice.service;

import java.util.List;

import com.ce.pms.base.service.IPmsBaseService;
import com.ce.pms.custservice.vo.CustServiceEventSearchVO;
import com.ce.pms.custservice.vo.CustServiceEventVO;
import com.sitechasia.webx.core.support.Page;


/***
 * 客服事件管理接口
 * @author Administrator
 *
 */
public interface IEventManageService extends IPmsBaseService {

   /***
    * 功能描述:  新建客服事件<br>
    * @param custServiceEventVO
    * @return
    * @roseuid 4924D5ED02AF
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public CustServiceEventVO addCustEvent(CustServiceEventVO custServiceEventVO);

   /***
    * 功能描述:  修改客服事件<br>
    * @param custServiceEventVO
    * @return CustServiceEventVO
    * @roseuid 4924F5170203
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public CustServiceEventVO editCustEvent(CustServiceEventVO custServiceEventVO);


   /***
    * 功能描述: 归档 <br>
    * @param custServiceEventVO
    * @roseuid 49251D61033C
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void archivism(CustServiceEventVO custServiceEventVO);

   /***
    * 功能描述:  作废客服事件<br>
    * @param custServiceEventVO
    * @roseuid 4924F16C005D
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void setAsideCustEvent(CustServiceEventVO custServiceEventVO);

   /***
    * 功能描述:  通知事件已提交<br>
    * @param csEventID
    * @roseuid 4933C04801E4
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void noteSubmitTask(Long csEventID);

   /***
    * 功能描述:  通知新增回访登记<br>
    * @param csEventID
    * @roseuid 4928125C0222
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void noteAddReturnVisit(Long csEventID);

   /***
    * 功能描述:  通知阅签<br>
    * @param csEventID
    * @roseuid 492824AE037A
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void noteAddSignReading(Long csEventID);

   /***
    * 功能描述:  通知新增抽检<br>
    * @param csEventID
    * @roseuid 492A58910109
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void noteAddCheckRecord(Long csEventID);

   /***
    * 功能描述:  通知作废抽检<br>
    * @param csEventID
    * @roseuid 492A58910109
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void noteSetAsideCheckRecord(Long csEventID);

   /***
	 * 功能描述:  判断事件是否可以修改<br>
	 * @param csEventID 当前事件ID
	 * @return
	 * Create author:高嵩 <br>
	 * Create on:2009-1-14  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public boolean isAllowEditCustEvent(Long csEventID);


	/***
	 * 功能描述:  判断事件是否允许作废<br>
	 * @param csEventID
	 * @return
	 * Create author:高嵩 <br>
	 * Create on:2009-1-14  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public boolean  isAllowSetAsideEvent(Long csEventID);

   /***
    * 功能描述: 判断是否可以进行抽检 <br>
    * @param csEventID
    * @return
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public boolean isAllowCheck(Long csEventID);

   /***
    * 功能描述: 判断是否可以进行回访 <br>
    * @param csEventID
    * @return
    * Create author:高嵩 <br>
    * Create on:2008-12-26  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */
   public boolean isAllowReturnVisit(Long csEventID);


	/***
	 * 功能描述: 判断是否充许作废回访 <br>
	 * @param csEventID
	 * @return
	 * Create author:高嵩 <br>
	 * Create on:2009-1-4  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public boolean isAllowSetAsideReturnVisit(Long csEventID);

	/***
	 * 功能描述: 判断是否允许进行阅签 <br>
	 * @param csEventID
	 * @return
	 * Create author:高嵩 <br>
	 * Create on:2009-1-4  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public boolean isAllowReadView(Long csEventID);



	/***
	 * 功能描述:  判断是否可以进行归档操作<br>
	 * @param csEventID
	 * @return
	 * Create author:高嵩 <br>
	 * Create on:2009-1-7  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public boolean isAllowArchivism(Long csEventID);

   /***
    * 功能描述: 关联事件 <br>
    * @param theEventID
    * @param associatedCSEventIDs
    * @roseuid 49251EBF02DE
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void associateCSEvent(Long theEventID, List<Long> associatedCSEventIDs);

   /***
    * 功能描述:  解除事件<br>
    * @param MastEventID
    * @param associatedEventID
    * @roseuid 49388F75031C
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void riddanceCSEvent(Long MastEventID,Long associatedEventID);

   /***
    * 功能描述: 手动触发事件完成 <br>
    * @param csEventID
    * @roseuid 4942336401B5
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public void manualTriggerComplete(Long csEventID);

   /***
    * 功能描述:  通过事件ID查询事件<br>
    * @param csEventID
    * @return
    * @roseuid 4941C1DE01B5
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public CustServiceEventVO getCustServEventByID(Long csEventID);

   /***
    * 功能描述: 查询客服事件列表 <br>
    * @param custServiceEventSearchVO
    * @return List<CustServiceEventVO>
    * @roseuid 494329B00399
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public List<CustServiceEventVO> queryCustServEventList(CustServiceEventSearchVO custServiceEventSearchVO);

   /***
    * 功能描述:  按页查询客服事件<br>
    * @param custServiceEventSearchVO
    * @return Page
    * @roseuid 4943444B01E4
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public Page queryCustServEventByPage(CustServiceEventSearchVO custServiceEventSearchVO);

   /***
    * 功能描述:  查询关联事件<br>
    * @param custServiceEventSearchVO
    * @return List<CustServiceEventVO>
    * @roseuid 494345BF0128
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public List<CustServiceEventVO> queryAssociatedCSEventList(CustServiceEventSearchVO custServiceEventSearchVO);

   /***
    * 功能描述:  分页查询关联事件<br>
    * @param custServiceEventSearchVO
    * @return Page
    * @roseuid 4943693E032C
    * Create author:高嵩 <br>
    * Create on:2008-12-23  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */

   public Page queryAssociatedCSEventByPage(CustServiceEventSearchVO custServiceEventSearchVO);

   /***
    * 功能描述:  通知撤消提交任务<br>
    * @param id  事件ID
    * Create author:高嵩 <br>
    * Create on:2008-12-29  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */
   public void cancelSubmitTask(Long taskID, Long csEventID);

   /**
	 * 功能描述:检查指定的事件是否能创建派工单  <br>
	 * @param custEventId
	 *
	 * Create author:付湘辉 <br>
	 * Create on:2009-1-9  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public void checkIsAllowAddDispatchForm(Long custEventId);
}
